package com.decent.common.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 认证相关的异常的枚举
 *
 * @author 张子旭
 * @date 2022/1/20
 */
@Getter
@AllArgsConstructor
public enum AuthExceptionEnum {

    /**
     * 账号或密码为空
     */
    ACCOUNT_PWD_EMPTY(101001, "用户名或密码不能为空"),

    /**
     * 账号密码错误
     */
    ACCOUNT_PWD_ERROR(101002, "用户名或密码不正确"),

    /**
     * 验证码错误
     */
    VALID_CODE_ERROR(101003, "验证码错误，请检查captcha参数"),

    /**
     * 请求token为空
     */
    REQUEST_TOKEN_EMPTY(101004, "请求token为空，请携带token访问本接口"),

    /**
     * token格式不正确，token请以Bearer开头
     */
    NOT_VALID_TOKEN_TYPE(101005, "token格式不正确，token请以Bearer开头，并且Bearer后边带一个空格"),

    /**
     * 请求token错误
     */
    REQUEST_TOKEN_ERROR(101006, "请求token错误"),

    /**
     * 账号被冻结
     */
    ACCOUNT_FREEZE_ERROR(101007, "账号被冻结，请联系管理员"),

    /**
     * 登录已过期
     */
    LOGIN_EXPIRED(9006, "登录已过期，请重新登录"),

    /**
     * 无登录用户
     */
    NO_LOGIN_USER(101009, "无登录用户"),
    /**
     * 当前账号无访问权限
     */
    NO_PERMISSION(101010, "当前账号无访问权限"),
    ;

    private final Integer code;
    private final String message;
}
